home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / spwno413.zip / SPAWNO.H < prev    next >
C/C++ Source or Header  |  1991-11-10  |  5KB  |  98 lines

  1. /********************************************************************/
  2. /*   SPAWNO v4.0   EMS/XMS/disk swapping replacement for spawn...() */
  3. /*   (c) Copyright 1990, 1991 Ralf Brown  All Rights Reserved        */
  4. /*                                    */
  5. /*   May be freely copied provided that this copyright notice is    */
  6. /*   not altered or removed.                        */
  7. /********************************************************************/
  8.  
  9. #ifndef __SPAWNO_H
  10. #define __SPAWNO_H
  11.  
  12. #include <stdarg.h>
  13.  
  14. #ifdef M_I86          /* MSC 5.x */
  15. #  ifndef _Cdecl
  16. #    define _Cdecl cdecl
  17. #  endif
  18. #endif /* M_I86 */
  19.  
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif /* __cplusplus */
  23. void _Cdecl init_SPAWNO(const char *overlay_path, int swap_types) ;
  24. int _Cdecl spawnvo(const char *overlay_path, const char *name, const char **args) ;
  25. int _Cdecl spawnvpo(const char *overlay_path, const char *name, const char **args) ;
  26. int _Cdecl spawnveo(const char *overlay_path, const char *name, const char **args,const char **env) ;
  27. int _Cdecl spawnvpeo(const char *overlay_path, const char *name, const char **args,const char **env) ;
  28. int _Cdecl spawnlo(const char *overlay_path, const char *name, ...) ;
  29. int _Cdecl spawnlpo(const char *overlay_path, const char *name, ...) ;
  30. int _Cdecl spawnleo(const char *overlay_path, const char *name, ...) ;
  31. int _Cdecl spawnlpeo(const char *overlay_path, const char *name, ...) ;
  32. int _Cdecl systemo(const char *overlay_path, const char *command) ;
  33.  
  34.   /* This function is normally called only by the spawn..() and spawn..o()  */
  35.   /* functions                                    */
  36. int pascal __spawnv(const char *overlay_path,const char *name,const char **args,unsigned int env) ;
  37.  
  38. #ifdef __cplusplus
  39. }
  40. #endif /* __cplusplus */
  41.  
  42.   /* This variable is used by the functions which override the standard     */
  43.   /* spawn..() functions; you should set it at the beginning of main().     */
  44.   /* It points at a string containing a list of directories to be used when */
  45.   /* swapping to disk, separated by semicolons.  If you use multiple        */
  46.   /* directories, they should be on different drives since for directories  */
  47.   /* other than the root, inability to swap to one directory implies        */
  48.   /* inability to swap to all others on the same drive.             */
  49. extern const char *pascal ___spawn_swap_dirs ;
  50.  
  51.   /* The following variable determines whether SPAWNO is allowed to use XMS */
  52.   /* memory if available.  Set to 0 to disable XMS, 1 (default) to enable   */
  53. extern char _Cdecl __spawn_xms ;
  54.  
  55.   /* The next variable determines whether SPAWNO is allowed to use EMS        */
  56.   /* memory if available and XMS is either unavailable or disabled.  Set to */
  57.   /* 0 to disable EMS, 1 (default) to enable.                    */
  58. extern char _Cdecl __spawn_ems ;
  59.  
  60.   /* The next variable determines whether SPAWNO is allowed to use non-XMS  */
  61.   /* extended memory if available.  Set to 0 to disable extended memory,    */
  62.   /* 1 (default) to enable.                            */
  63. extern char _Cdecl __spawn_ext ;
  64.  
  65.   /* Specify whether to swap the program's memory blocks in the upper       */
  66.   /* memory area under MSDOS 5.0 (requires DOS=UMB in CONFIG.SYS)        */
  67. extern char _Cdecl __spawn_swap_UMA ;
  68.  
  69.   /* Specify whether INT 23h and INT 24h handlers should be deactivated by  */
  70.   /* SPAWNO.  You will normally want to deactivate the handlers unless you  */
  71.   /* have elected to keep part of your program in memory while swapped.     */
  72.   /* Set to 1 to preserve the INT 23h and INT 24h handlers, 0 (default) to  */
  73.   /* disable the handlers.                            */
  74. extern char _Cdecl __spawn_keepints ;
  75.  
  76.   /* This variable specifies the number of paragraphs to keep resident      */
  77.   /* while swapped out (default 0 means minimum possible)            */
  78. extern unsigned int _Cdecl __spawn_resident ;
  79.  
  80.   /* The last variable specifies how many paragraphs of the stack to keep   */
  81.   /* in memory while swapped out (default = 3, minimum = 2)            */
  82.   /* Note: the minimum value of 2 will only work on bare DOS; the more        */
  83.   /*  TSRs that hook INT 21h and chain with a simulated interrupt rather    */
  84.   /*  than a far jump, the more paragraphs of stack must remain resident--  */
  85.   /*  roughly one extra paragraph for every two such TSRs.            */
  86. extern unsigned int _Cdecl __spawn_res_stack ;
  87.  
  88.   /* Manifest constants for calling init_SPAWNO() */
  89. #define SWAP_DISK 0
  90. #define SWAP_XMS  1
  91. #define SWAP_EMS  2
  92. #define SWAP_EXT  4
  93. #define SWAP_ANY 0xFF
  94.  
  95. #endif /* __SPAWNO_H */
  96.  
  97. /*=- End of SPAWNO.H -=*/
  98.